package com.nondo.rdp.auth.service;


import com.nondo.rdp.auth.domain.Menu;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 * com.seelyn.superp.core.service
 *
 * @author linfeng
 * @since 2017/7/30
 */
public interface MenuService {

    /**
     * 根据Id查询Menu信息
     *
     * @param id 主键
     * @return 字典数据
     */
    Menu findOne(Long id);

    /**
     * 获取当前用户下的菜单
     *
     * @param request  HttpServletRequest
     * @param response HttpServletResponse
     * @return 菜单列表
     */
    List<Menu> getMenuList(HttpServletRequest request, HttpServletResponse response);

    /**
     * 根据公司ID查询菜单集合
     *
     * @return 菜单集合
     */
    List<Menu> findByRoot();

    /**
     * 保存菜单信息
     *
     * @param menu 菜单信息
     */
    void save(Menu menu);

    /**
     * 根据主键菜单信息
     *
     * @param id 菜单信息主键
     */
    void delete(Long id);

    List<Menu> findAll();

}
